DirFF -- Display directory of files contained in the FastFile subsystem.

Syntax      DirFF

Description In version 1.1 of the ORCA shell, ByteWorks introduced the FastFile
            high level file caching subsystem.  This system works by loading
            and managing disk images of files in memory for quicker access by
            compilers, linkers, and other tools that work with the FastFile
            system.  (See the appropropriate Orca/M documentation for details.)

            One side effect of the FastFile system is that memory is used to
            keep these file images in memory.  This means that less memory is
            available for use by the rest of the system.  This utility is used
            to display exactly which files are currently being maintained by
            the subsystem, and the various attributes of the file.  This
            directory listing is very much like a normal directory listing
            produced by the 'Catalog' command, with the following differences.

            The 'Blocks' field contain the number of disk blocks that are used
            (or would be used) by the disk copy of the file.  If an asterisk
            (*) appears after the number for a particular file, it means that
            the memory block for the file within the FastFile system has been
            purged, and that the memory image of the file is not actually using
            any memory.

            The 'Flags' field corresponds to the flags byte of the FastFile
            system call.  If a 'D' appears in this field, it means that the
            file exists on disk as well as within the FastFile system.  In some
            cases, parts of the development system can pass files between
            themselves by using the FastFile system entirely and skipping the
            actual writing of the file to disk.  For example, when the +M flag
            is specified in an ASML command, the assembler creates the object
            file in the FastFile system only for use by the Linker.  The object
            file does not get written to disk.

            If a 'P' appears in the flags field, it means that FastFile system
            will allow a FastFile PURGE call on this particular file.

            The two digits in the remainder of the 'Flags' field correspond to
            the current purge level of the memory block containing the file.
            This can be any number from '00' to '03'.  See the Memory Manager
            chapter of the Apple IIGS Toolbox Reference Manual for a
            description of purge levels.

            At the conclusion of the directory listing, the utility will
            display the total number of files found within the FastFile system,
            and an accumulated total of the number of bytes of memory used by
            files within the FastFile system.  This value is determined by
            performing a GetHandleSize on each non-purged file handle found
            within the FastFile system.

Input       None.

Ouput       The directory listing is displayed on the standard output device.

Diagnostics Error messages are written to the diagnostic output device.

Status      The following status codes may be returned to the APW shell:

            0   No errors.
            -1  Command-Period pressed.
            <any>   Any other return value is the disk error number returned by
                    a GS/OS or FastFile call.

Options     None.

Example     With the following command entered on the command line:

            DirFF

            The following output was produced:

Files in FastFile system:

Name            Type  Blocks   Modified         Created         Access  Flags

CLRFF           TXT        5  18 Jun 90 12:01  18 Jun 90 10:55  DNB WR  DP 00  
DIRFF           TXT        3  18 Jun 90 11:44  18 Jun 90 10:55  DNB WR  DP 00  
PAGEEJECT       TXT        3* 18 Jun 90 11:28  18 Jun 90 10:55  DNB WR  DP 02  
EJECT           TXT        5  18 Jun 90 11:24  18 Jun 90 10:55  DNB WR  DP 00  
SETFILE         TXT        9  18 Jun 90 10:55  18 Jun 90 10:55  DNB WR  DP 00  
SYSTABS         SRC        7  10 Aug 89 18:43   9 Nov 88 15:00  DNB WR  DP 00  
SYSEMAC         BIN        8  25 Jul 89 14:39   9 Nov 88 15:00  DNB WR  DP 00  

7 files for a total of   48309 bytes of memory used.


See Also    ClrFF.
